//
//  LBStatusTopView.swift
//  LBNewWeiBo
//
//  Created by bin on 15/11/1.
//  Copyright © 2015年 bin. All rights reserved.
//

import UIKit

/// 微博的头部视图
class LBStatusTopView: UIView {

    //MARK: - 属性
    /// 微博模型属性
    var status: LBStatus? {
        didSet {
            
            // 设置视图内容
            // 1.用户头像
            // 获取用户头像的URL
            //
            if let urlStr = status?.user?.profile_image_url {
                //获取到模型头像url字符串有值
                iconImgView.lb_setImageWithURL(NSURL(string: urlStr))
            }
           
            // 设置用户名
            nameLabel.text = status?.user?.name
            
            // 设置时间
            timeLabel.text = status?.created_at
            
            // 设置微博来源
            sourceLabel.text = "来自星星的微博"
            
            // 设置认证图标
            // 认证类型
            // 判断类型设置不同的图片
            // 没有认证:-1   认证用户:0  企业认证:2,3,5  达人:220
            approveImgView.image = status?.user?.verifiedTypeImage
            
            // 设置Vip
            vipimgView.image = status?.user?.mbrankImage
            
        }
    }
    
    //MARK: - 构造方法
    override init(frame: CGRect) {
        super.init(frame: frame)
        
        // 准备UI
        prepareUI()
    }

    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
    
    
    //MARK: - 准备UI
    func prepareUI() {
        
        // 设置颜色 
//        self.backgroundColor = UIColor(white: 0.96, alpha: 0.8)
        
        // 添加到父控件
        // 添加头像
        addSubview(iconImgView) // 添加头像
        addSubview(nameLabel) // 用户名
        addSubview(vipimgView) // 会员
        addSubview(timeLabel) // 时间
        addSubview(sourceLabel) // 来源
        addSubview(approveImgView) // 认证
        
        // 设置自控件约束
        // 设置 头像的约束 在父控件的内部 AlignInner
        iconImgView.ff_AlignInner(type: ff_AlignType.TopLeft, referView: self, size: CGSize(width: 35, height: 35), offset: CGPoint(x: 8, y: 8))
        
        // 名称  参照图像视图的右上角，间距x 8 y 0
        nameLabel.ff_AlignHorizontal(type: ff_AlignType.TopRight, referView: iconImgView, size: nil, offset: CGPoint.init(x: 8, y: 0))
        
        // vip 参照名字视图的右中 ，间距 x 8  y 0
        vipimgView.ff_AlignHorizontal(type: ff_AlignType.CenterRight, referView: nameLabel, size: CGSize(width: 14, height: 14), offset: CGPoint(x: 8, y: 0))
        // 时间
        timeLabel.ff_AlignHorizontal(type: ff_AlignType.BottomRight, referView: iconImgView, size: nil, offset: CGPoint(x: 8, y: 0))
        
        // 来源
        sourceLabel.ff_AlignHorizontal(type: ff_AlignType.BottomRight, referView: timeLabel, size: nil, offset: CGPoint(x: 8, y: 0))
        
        //认证图标
        approveImgView.ff_AlignInner(type: ff_AlignType.BottomRight , referView: iconImgView, size: CGSize(width: 17, height: 17), offset: CGPoint(x: 8.5, y: 8.5))
        
        
    }
    
    //MARK: - 懒加载
    /// 头像
    lazy var iconImgView = UIImageView()
    
    /// 用户名
    lazy var nameLabel = UILabel(fontSize: 14, textColor: UIColor.darkGrayColor())
    
    /// 会员
    lazy var vipimgView = UIImageView()
    
    /// 时间
    lazy var timeLabel = UILabel(fontSize: 10, textColor: UIColor.orangeColor())
    
    /// 来源
    lazy var sourceLabel = UILabel(fontSize: 10, textColor: UIColor.lightGrayColor())

    /// 认证
    lazy var approveImgView: UIImageView = UIImageView(image: UIImage(named: "common_icon_membership"))
    
}
